1. Field of the Inventions
The present invention relates to virtual computer-generated environments in which participants are represented by computer-generated avatars, and in particular for environments that simulate an actual 3-D environment and allow for simultaneous participation of multiple players.
2. Description of Related Art
Computer generated virtual environments are increasingly popular methods for people, both real and automated, to interact within a networked system. The creation of virtualized worlds, three dimensional or otherwise, is well known. Simple text based adventures such as “Zork”, early “first person shooter” games such as “Doom”, and ultimately numerous highly complex environments such as “Halo” are well known in the art. Various on-line environments are known in which a 3-D physical world (actual or fantasy) is simulated. Environments of this type are sometimes referred to as “virtual reality” or “virtual reality universe” (VRU) environments. In known VRU environments, an actual or fantasy universe is simulated within a computer memory. Multiple players may participate in the environment through a computer network, such as a local area network or a wide area network. Each player selects an “avatar,” which may comprise a three-dimensional figure of a man, woman, or other being, to represent them in the VRU environment. Players send inputs to a VRU engine to move their avatars around the VRU environment, and are able to cause interaction between their avatars and objects in the VRU. For example, a player's avatar may interact with an automated entity or person, simulated static objects, or avatars operated by other players.
With the ubiquity of computer networking, engineers and designers included the ability for players within these virtual environments to interact. One drawback of the VRU is that, as in the actual world, space is limited by environmental constraints. In addition, limitations on computer processing speed, network bandwidth, and other factors also limit the number of participants and the richness of environment. Accordingly, prior art VRU environments may limit the number of simultaneous players and their methods of interactions for various reasons, including to avoid exceeding the programming, networking, and hardware limitations of the servers and/or clients.
Such limitations may be present in “massively multiplayer” environments, such as “Everquest” or “Second Life”, which are built specifically on the concept of mimicking real world environments, including the natural capacity of real world environments to hold numerous simultaneous inhabitants. Such limitations may be implemented in a less than desirable manner because they limit the ability of the VRU to accommodate the wishes of its clients. However, such limitations are provided for various reasons, including because (a) server capacity is incapable of simultaneously handling the number of users desired or (b) client capacity, for each user, is insufficient to process and display the data needed for such user's computer to appropriately and adequately render avatars or other representations of the other users, and otherwise construct a complete and accurate representation of the environment; or (c) independent of hardware or software capacity considerations, limitations imposed by geometric constraints of the simulated environment, or simply put, lack of simulated space.
Mechanisms to address server capacity and client capacity issues, while flawed, exist in the art. Such mechanisms may include automatically moving avatars from one portion of the environment to another (with or without the player's consent), barring additional avatars from entering an environment once a defined capacity is reached, limiting the ability of inhabitants of the environment to interact with each other and the environment, and having servers operate completely (or partially) independently.
For example, one problem in implementing a VRU arises from its presentation of content in a virtual approximation of real, three-dimensional space. As a result, there is a limit on how much modeled space can be occupied at the same time. When using the HTTP application layer or other conventional internet modalities, the number of users able to participate on a web site simultaneously is limited only by the computing power and network bandwidth available to the site hosting the page. In contrast, a VRU mimics the three-dimensional space found within the physical world and therefore the space limitations found in the real world also are experienced within the VRU. These include such limitations as the inability to realistically depict multiple users in the same place, the inability of users to walk through the same doorway simultaneously, the inability to exceed occupancy limitations, and similar real world space limitations. Because VRU users are visible to other users, they occupy space, a portion of the visual field, or both.
The problem may be further demonstrated with the example of a nightclub within a VRU. The nightclub would be represented as a fixed area of space within the VRU. While the VRU could in theory have a nightclub of enormous dimensions, there would be areas within the nightclub, such as proximate to a stage or proximate to celebrities present therein, which would be very desirable areas to inhabit. As a result, whether the area at issue is described as the full nightclub or the more desirable areas therein, some or the entire nightclub may have less space available for occupancy than there are people who desire to have their avatars occupy it. While the same solutions exist in a VRU as exist in the real world for increasing occupancy capacity (i.e. making the facility bigger, packing more people in with less space available to reach, etc.), the very limitations found in those real world solutions would apply in a VRU.
A second problem common to VRU's is that they depend on their various users' computers to render the environments that are presented within the VRU. Thus, there are limitations on how many avatars, objects, textures and other features can be rendered and animated for each user. Again utilizing the example of a nightclub, if the dimensions of the nightclub were drawn so that 10,000 avatars could simultaneously be accommodated, seen, and interacted with, each user computer would be tasked with tracking, rendering and animating each of 10,000 autonomously controlled avatars. Similarly, avatars within the same space, when permitted to communicate with each other, whether via chat, voice over IP, or otherwise, may generate too much content to permit effective communication.
It is desirable, therefore, to resolve these problems and to provide access for greater numbers of avatars within a VRU space while minimizing undesired experiences for VRU participants, and providing new, more varied and interesting opportunities and experiences for users within the VRU space.